package ProyectoX;

import javax.swing.ImageIcon;

public class Saltador extends Zombie {

	// Atributos

	protected static String nombre = "Zombie";
	protected static int vidaInicial = 150;
	protected boolean salto;

	// Constructor

	public Saltador(int posX, int posY, Juego miJuego) {
		super(nombre,posX, posY, miJuego, vidaInicial);
		salto = false;
		ImageIcon aux = new ImageIcon(getClass().getClassLoader().getResource("Saltador.gif"));
		RepGrafica RG = new RepGrafica(aux.getImage());
		salto = false;
		setRepGrafica(RG);
		start();
		posPuntoY =(posY-15)/91;

	}
	
	public void colisionarCon(Planta p){
		atacando = true;
		moverse = false;
		if(!salto)
			saltar();}
	
	public int getPuntoX(){
		if(!salto)
			return posicionX+85;
		else return posicionX;
	}

	public void run () {
		miJuego.getVentana().getContentPane().add(repGrafica);
		int posicionFinal=-40;
		int velocidad;
		int aux = 0 ;
		while (posicionX>posicionFinal && !murio()) {
			 if(congelado){
				 velocidad=40;
				 aux++;}
			 else velocidad=20;
			 posicionX=posicionX-1;
			 dibujar(miJuego.getVentana().getGraphics(),0,0);
			try {
			if(!miJuego.getPerdio() || murio())
				break;
		    sleep(velocidad);
		    if(!moverse && !salto)
		    	{saltar();
		    	moverse = true;
		    	atacando = false;
		    	}
		    while(!moverse && salto)
		        {sleep(cadencia);
		         atacando =false;
		        }
		   
			} catch (InterruptedException e) {
		      e.printStackTrace();		
			}
			if(aux == tiempoCongelado/30)
				{congelado = false;
				aux=0;
				}
			

		}
		 if(!murio() && miJuego.getPerdio())
		          miJuego.yaPerdio();
	}
	
	public boolean getSalto(){
		return salto;
	}
	
	public void saltar(){
		
		ImageIcon aux = new ImageIcon(getClass().getClassLoader().getResource("Saltando1.gif"));
		repGrafica.cambiarImagen(aux.getImage());
		dibujar(miJuego.getVentana().getGraphics(),0,-50);
		try {
			sleep(500);
		} catch (InterruptedException e) {
			e.printStackTrace();
		}
		
		aux = new ImageIcon(getClass().getClassLoader().getResource("Saltando2.gif"));
		repGrafica.cambiarImagen(aux.getImage());
		dibujar(miJuego.getVentana().getGraphics(),0,0-50);
		try {
			sleep(400);
		} catch (InterruptedException e) {	
			e.printStackTrace();
		}
		aux = new ImageIcon(getClass().getClassLoader().getResource("Saltador_salto.gif"));
		repGrafica.cambiarImagen(aux.getImage());
		dibujar(miJuego.getVentana().getGraphics(),0,0);		
		salto = true;
	
		
	}
}
